import turtle as t
t.colormode(255)# 颜色模式
t.speed(200)
t.screensize(800,800,"white")#画布大小背景颜色
t.setup(width=800, height=800,startx = 50,starty = 20)#绘图窗口的大小和起始坐标
#t.bgpic("di_2_800.gif")
t.title("逆境清醒皮卡丘！")#设置绘图窗口的标题
t.resizemode('noresize')  #大小调整模式:auto,user,noresize
t.tracer(1)   
t.hideturtle()

def mlingpen(x, y):
    t.penup()
    t.goto(x, y)
    t.pendown()

def mlingpkqface(x,y):
    mlingpen(x, y)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(40)
    t.circle(100, 30)
    t.circle(40, 60)
    t.right(30)
    t.circle(160, 20)
    t.seth(-20)
    t.circle(300, 30)
    t.circle(30, 50)
    t.left(85)
    t.circle(300,85)
    t.left(1)
    t.circle(300,35)
    t.circle(30, 40)
    t.seth(40)
    t.circle(300,32)
    t.right(150)
    t.circle(100, 30)
    t.circle(30, 60)
    t.left(180)
    t.circle(100, 60)
    t.right(30)
    t.circle(100, 60)
    t.circle(70, 120)
    t.circle(-120, 80)
    t.circle(35,140)
    t.right(60)
    t.circle(300,23)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.circle(30,23)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.circle(90,80)
    t.right(170)
    t.circle(70,65)
    t.right(20)
    t.circle(-150,20)
    t.circle(20,90)
    t.right(200)
    t.circle(50,50)
    t.goto(x, y)
    t.end_fill()
    t.penup()
    t.goto(-72, -25)
    t.pendown()
    t.pencolor("#923E24")
    t.fillcolor("#923E24")
    t.begin_fill()
    t.seth(-6)
    t.circle(120, 30)
    t.right(160)
    t.circle(-50, 65)
    t.end_fill()
    mlingpen(209.21,135.02)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.seth(145)
    t.begin_fill()
    t.circle(300,12)
    t.left(50)
    t.circle(60,59)
    t.left(88)
    t.circle(190,30)
    t.end_fill()
    mlingpen(-253.14,-105.48)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.seth(40)
    t.begin_fill()
    t.circle(300,12)
    t.left(50)
    t.circle(60,57)
    t.left(88)
    t.circle(190,30)
    t.end_fill()

def mlingpkqyingyinying():
    t.penup()
    t.seth(0)
    t.pensize(1)
    t.pencolor("#DDA120")
    t.fillcolor('#DDA120')
    t.begin_fill()
    t.left(220)
    mlingpen(-179,-90)
    t.circle(97, 60)
    t.circle(69, 122)
    t.circle(-120, 80)
    t.circle(33,135)
    t.left(90)
    t.circle(-25,150)
    t.left(175)
    t.circle(-60,140)
    t.left(175)
    t.circle(-60,100)
    t.right(5)
    t.circle(85,60)
    t.goto(-179,-90)
    t.end_fill()
    t.penup()
    t.penup()
    t.seth(0)
    mlingpen(115.87,-170.16)
    t.pencolor("#eca9a9")
    t.fillcolor('#eca9a9')
    t.begin_fill()
    t.left(45)
    t.circle(300,20)
    t.circle(8,155)
    t.left(3)
    t.circle(300,20)
    t.circle(9,155)
    t.goto(115.87,-170.16)
    t.end_fill()
    t.penup()


def mlingpkqjiao():
    mlingpen(-215,-160)
    t.pensize(3)
    t.pencolor("#FBD624")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(-30)
    t.circle(30,70)
    t.left(20)
    t.circle(-50,150)
    t.circle(10,160)
    t.circle(80,80)
    t.left(5)
    t.circle(75,110)
    t.goto(-210,-160)
    t.penup()
    t.end_fill()
    mlingpen(-149,-191)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(0)
    t.left(40)
    t.circle(148,55)
    t.right(38)
    t.fd(20)
    t.left(128)
    t.fd(15)
    t.right(88)
    t.fd(15)
    t.left(128)
    t.fd(15)
    t.right(88)
    t.fd(15)
    t.left(128)
    t.fd(15)
    t.right(45)
    t.circle(130,60)
    t.circle(23,75)
    t.end_fill()
    mlingpen(-149,-180)
    t.pensize(3)
    t.pencolor("#eca9a9")
    t.fillcolor('#eca9a9')
    t.begin_fill()
    t.seth(0)
    t.left(45)
    t.circle(148,45)
    t.left(45)
    t.circle(15,110)
    t.right(18)
    t.circle(130,40)
    t.circle(17,100)
    t.end_fill()


def mlingpkqcap():
    mlingpen(-210,95)
    t.pensize(4)
    t.pencolor("#000000")
    t.fillcolor('#CD0000')
    t.begin_fill()
    t.seth(290)
    t.circle(45,80)
    t.circle(345,30)
    t.circle(45,90)
    t.left(2)
    t.fd(120)
    t.left(45)
    t.circle(200,60)
    t.goto(-210,95)
    t.end_fill()
    t.left(175)
    t.circle(-290,50)
    t.pencolor("#000000")
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    mlingpen(-160,272)
    t.begin_fill()
    t.goto(-80,260)
    t.goto(-45,200)
    t.left(186)
    t.circle(230,41)
    t.goto(-210,200)
    t.goto(-180,270)
    t.goto(-160,272)
    t.end_fill()
    mlingpen(-175,265)
    t.seth(0)
    t.begin_fill()
    t.circle(13)
    t.end_fill()
    t.penup()
    mlingpen(-125,222)
    t.pensize(7)
    t.pencolor("#6ba65a")
    t.goto(-140,225)
    t.pensize(9)
    t.goto(-155,170)
    t.left(45)
    t.circle(-130,30)
    t.pensize(3)
    mlingpen(-205,96)
    t.pensize(3)
    t.pencolor("#ffffff")
    t.seth(286)
    t.circle(39,74)
    t.left(9)
    t.circle(331,32)
    t.circle(45,80)
    t.pensize(3)


def mlingpkqeye():
    t.color("#000000","#702c00")
    mlingpen(-110, 24)
    t.begin_fill()
    t.seth(0)
    t.circle(24)
    t.end_fill()
    mlingpen(-110,31)
    t.color("black","black")
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    t.color("white", "white")
    mlingpen(-105, 53)
    t.begin_fill()
    t.circle(8)
    t.end_fill()
    t.color("#000000","#702c00")
    mlingpen(0,62)
    t.begin_fill()
    t.seth(0)
    t.circle(24)
    t.end_fill()
    mlingpen(2,70)
    t.color("black","black")
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    mlingpen(5,92)
    t.color("white", "white")
    t.begin_fill()
    t.circle(8)
    t.penup()
    t.end_fill()
    t.hideturtle()


def mlingpkqcheek1():
    t.color("#9E4406", "#FE2C21")
    t.speed(1000)
    t.penup()
    t.goto(-130, -50)
    t.pendown()
    t.begin_fill()
    t.setheading(0)
    t.circle(27)
    t.end_fill()
    t.color("#9E4406", "#FE2C21")
    t.penup()
    mlingpen(53, -20)
    t.pendown()
    t.begin_fill()
    t.setheading(0)
    t.circle(27)
    t.end_fill()

def mlingweiba(x,y):
    mlingpen(x, y)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#CD853F')
    t.begin_fill()
    t.seth(40)
    t.fd(200)
    t.seth(-80)
    t.fd(150)
    t.seth(210)
    t.fd(150)
    t.left(90)
    t.fd(100)
    t.right(95)
    t.fd(100)
    t.left(110)
    t.fd(70)
    t.right(110)
    t.fd(80)
    t.left(110)
    t.fd(30)
    t.right(110)
    t.fd(32)
    t.right(106)
    t.circle(100, 25)
    t.right(15)
    t.circle(-300, 2)
    t.seth(30)
    t.fd(40)
    t.left(100)
    t.fd(70)
    t.right(100)
    t.fd(80)
    t.left(100)
    t.fd(46)
    t.seth(66)
    t.circle(200, 38)
    t.right(10)
    t.fd(10)
    t.end_fill()
    mlingpen(202,250)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(220)
    t.fd(120)
    t.circle(75, 120)
    t.left(50)
    t.fd(110)
    t.end_fill()


def mlingpkqcheek2(x, y, fx):
    mlingpen(x, y)
    t.speed(200)
    t.seth(fx)
    t.pencolor("#840101")
    t.fillcolor('#CD0000')
    t.begin_fill()
    n = 1.8
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            n -= 0.05
            t.left(3)
            t.fd(n)
        else:
            n += 0.05
            t.left(3)
            t.fd(n)
            t.end_fill()



def mlingpkqmouth():
    mlingpen(-60,20)
    t.speed(20)
    t.pensize(3)
    t.pencolor("#923E24")
    t.seth(-48)
    t.begin_fill()
    t.circle(15,110)
    t.right(90)
    t.circle(15,110)
    t.seth(0)
    mlingpen(-50,45)
    t.circle(5,180)



def mlingpkqshou1():
    mlingpen(-130,-30)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.seth(100)
    t.begin_fill()
    t.circle(130,30)
    t.right(100)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(30)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(30)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(50)
    t.circle(70,150)
    t.end_fill()

    mlingpen(-138,-67)
    t.pensize(2)
    t.pencolor("#DDA120")
    t.fillcolor('#DDA120')
    t.left(90)
    t.begin_fill()
    t.circle(40,40)
    t.left(10)
    t.circle(-60,70)
    t.left(40)
    t.circle(30,40)
    t.left(83)
    t.circle(70,110)
    t.end_fill()


def mlingpkqshou2():
    mlingpen(0,-40)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.seth(200)
    t.begin_fill()
    t.circle(55,90)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(90)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(50)
    t.circle(60,80)
    t.end_fill()


def mlingpkqball():
    mlingpen(-30,-250)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#CD0000')
    t.seth(0)
    t.begin_fill()
    t.circle(80)
    t.end_fill()
    mlingpen(-110,-170)
    t.seth(-90)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(80,180)
    t.end_fill()
    t.pensize(12)
    mlingpen(-105,-170)
    t.pencolor("#000000")
    t.goto(44,-170)
    t.pensize(3)
    mlingpen(-4,-170)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.begin_fill()
    t.circle(28)
    t.end_fill()
    mlingpen(-11,-170)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    mlingpen(-21,-170)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(10)
    t.end_fill()


def main():
    mlingweiba(50,120)
    mlingpkqface(30,0)
    mlingpkqyingyinying()
    mlingpkqcap()
    mlingpkqcheek2(-140,-10,300)
    mlingpkqcheek2(60, 50,80)
    mlingpkqshou1()
    mlingpkqjiao()
    mlingpkqball()
    mlingpkqshou2()
    mlingpkqmouth()
    mlingpkqeye()


if __name__ == '__main__':
    main()
    t.done()
    t.hideturtle()
